home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload Trio 2 / Shareware Overload Trio Volume 2 (Chestnut CD-ROM).ISO / dir24 / tor302c.zip / DOCS < prev    next >
Text File  |  1993-12-17  |  88KB  |  2,086 lines

  1. PCTOR V3.03c
  2.  
  3. PCTOR (c) Johan Forrer KC7WW 1991-1994
  4.  
  5.  
  6. Author: Johan B. Forrer KC7WW
  7. 26553 Priceview Drive
  8. Monroe, OR 97456
  9. United States of America
  10.  
  11.  
  12. CIS id: 70730,3472
  13.  
  14.  
  15. Shareware notice
  16.  
  17.  
  18.  
  19. This program is your registered copy of PCTOR and is not for
  20. distribution in any form. You may make as many copies for your
  21. own personal use. A Shareware version of the program is available
  22. from the author product. PCTOR may not be sold or distributed
  23. with another product without the express written permission of
  24. the author. The author, Johan Forrer, KC7WW will only support
  25. unmodified copies of this software.
  26.  
  27. If you are not satisfied with the program after registering it,
  28. you have 30 days from your registration date to return it for a
  29. full refund of your money, no questions asked.
  30.  
  31. Previously registered users may obtain a free upgrade to this
  32. version - please send a formatted disk and SASE (or stamped
  33. mailer or 2 IRC's).
  34.  
  35. This program may not be used by business or government
  36. institutions without proper licensing. Commercial users please
  37. contact Johan Forrer directly for modifications and/or details of
  38. site licensing.
  39. Acknowledgements
  40.  
  41.  
  42.  
  43. The work and ideas of Peter Martinez, G3PLX, and Paul Newland,
  44. AD7I, has been the source and inspiration for doing the "nuts and
  45. bolts" in this project.
  46.  
  47. Victor Poor's, W5SMM, helpful suggestions and ideas on
  48. compatibility with MBBIOS, PAMS/APlink, and the implementation of
  49. the extended ASCII set was invaluable.
  50.  
  51. The helpful suggestions of Frank Gorichar, W7JUF, who beta tested
  52. early versions of this software is greatly appreciated. A special
  53. word of appreciation to beta tester Peter Ferrand, WB2QLL/1, with
  54. helping sort out various bugs. Malcolm, WA9BVS's beta testing has
  55. helped locate numerous obscure bugs.
  56.  
  57. Thanks to Frank Wyatt, N6FW for forwarding technical
  58. documentation to me.
  59.  
  60. Many individuals have sent in "wish lists", some of which are now
  61. part of the latest version.  As always - your support, criticism,
  62. and suggestions are appreciated.
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  Please support the efforts of shareware developers.
  75.  
  76. Table of contents
  77.  
  78.  
  79.  
  80. 0.0  Quick summary for this release.
  81.  
  82. 1.0  PCTOR what does it do ?
  83.  
  84.  1.1  Minimum requirements to run PCTOR
  85.  
  86.  1.2  CAUTION
  87.  
  88.  1.3  Planned enhancements
  89.  
  90. 2.0  Introduction
  91.  
  92. 3.0  Hardware Interface
  93.  
  94. 4.0  Installation
  95.  
  96.  4.1  Software
  97.  
  98.  4.2  Customizing the configuration file
  99.  
  100. 5.0  Operating PCTOR
  101.  
  102.  5.1 Function keys
  103.  
  104.  5.2 Command menu
  105.  
  106. 6.0 Appendix
  107.  
  108.      6.1 If problems persist.....
  109.      6.2 What if it still does not work .....
  110.  6.3 A few notes about HF modems.
  111.  6.4 Soft error detection and correction.
  112.  6.5 Frequencies of FEC stations for test purposes.
  113.  6.6 Signal analysis module.
  114.  6.7 DSP modem.
  115.  6.8 PCTOR update history.
  116.  6.9  1992 Newsletter
  117.  6.10 1993 Newsletter
  118. 7.0  Disclaimer
  119.  
  120.  
  121.  
  122. 0.0 Quick summary for version 3.03
  123.  
  124.  
  125.  
  126. -------------------------------------------------------
  127. THE FOLLOWING ANNOUNCEMENT IS IMPORTANT TO SOME USERS.
  128. -------------------------------------------------------
  129.  
  130.  
  131. In order to support an new DSP modem on the same COM port that
  132. PCTOR uses, version 3.03 now only supports transmitted data
  133. output though TxD, (pin 2 on a DB25 or DB9). This is due to the
  134. re-allocation of DTR for other purposes (the DSP uses it). It is
  135. essential to establish whether your serial port UART is suitable
  136. at higher baud rates - most modern serial ports will work without
  137. any problems, some older styles may will not work too well.
  138.  
  139. Input and output mask options have been removed. These options
  140. only made sense when PCTOR was an AMTOR-only program. Ever since
  141. PCTOR included support for RTTY and now PacTOR, these mask
  142. settings often contradicted "normal" usage of RS232 signalling
  143. conventions. A general rule that holds for all modes now are:
  144.  
  145. Mark  (binary 1) = -12V
  146. Space (binary 0) = +12V
  147.  
  148. PTT keyed = +12V
  149.  
  150. This holds for RTTY/ASCII/AMTOR and HF Packet. Although PacTOR
  151. does not commit to any specifically. In order to be compatible
  152. with this convention, please check your modem and transceiver
  153. interfacing.
  154.  
  155.  
  156.               Bug fixes since version 3.02:
  157.               ----------------------------
  158.  
  159. 1. Restore the operating after returning from PC-PACTOR, i.e.
  160.    after usage of ALT-P.
  161.  
  162. 2. Message buffers now sorted alphabetically. 
  163.  
  164.  
  165.                      New features:
  166.                      ------------
  167.  
  168. 1. RTTY diddle control. Selectable in the configuration file,
  169.    toggled using the ALT-D key.
  170.  
  171. 2. ALT-P hot keys to PC-PACTOR.
  172.  
  173. 3. ALT-Y hot keys to Baycom (note: Baycom is a copyrighted
  174.    program by DL8MBT and DG3RBU - it is not supplied as part of
  175.    the PCTOR package).
  176.  
  177. 4. For users of the DSP modem, ALT-M brings up the DSP modem
  178.    submenu. The user can select a modem of RTTY, AMTOR, PacTOR,
  179.    or HF Packet.
  180.  
  181. 5. ALT-S sends a file continuously.
  182.  
  183. 6. Receive-only operation. This is selected from the command line
  184.    by inluding /R. 1.0 PCTOR what does it do ?
  185.  
  186.  
  187. Using only a low cost external HF modem, PCTOR makes it possible
  188. to run AMTOR on PC compatible hardware without the need of
  189. dedicated multi-mode terminal node controller (TNC) hardware. All
  190. decoding is performed in software in real time using only PC
  191. hardware. The software has been tested to work even on a lowly
  192. 4.77 Mhz PC compatible.
  193.  
  194.  
  195. PCTOR will run under Microsoft Windows as a DOS application in
  196. full screen mode (please see the supplied .PIF file).
  197.  
  198.  
  199. The main features of PCTOR:
  200.  
  201.  
  202.  
  203. 1  - Split screen operation: Data received through the AMTOR
  204.      translator is displayed on the upper window. The operator's
  205.      keyboard entry is displayed on the lower window. A status
  206.      window shows real-time operational status of the digital
  207.      translator. This includes, timing, path propagation delay,
  208.  link status, selcals, and more.
  209.  
  210. 2 -  All AMTOR modes are supported: ARQ, FEQ, and "Listen".
  211.      Ascii/Baudot at any baudrate (maximum allowed is 300 baud).
  212.  
  213. 3 -  The user may define several text buffers, i.e. brag tape,
  214.      CQ messages, etc. that may be loaded for transmission with
  215.      with one key stroke.
  216.  
  217. 4 -  Text files my be transmitted. Typically the user will
  218.      prepare these off-line.
  219.  
  220. 5 -  Unshift-on-space (UOS) option.
  221.  
  222. 6 -  "PLX"-method of upper/lower case with extensions as
  223.      developed by Peter Martinez (G3PLX), and Victor Poor
  224.      (W5SMM).
  225.  
  226. 7 -  A "high" reliability option based on multiple bit sampling
  227.      and majority voting. Memory ARQ for AMTOR is also supported.
  228.  
  229. 8 -  Receive data can be optionally be captured in a file.
  230.      Automatic time stamps, as well as user-initiated time stamps
  231.      may be entered into this capture file. The capture file can
  232.      be read using an ordinary text editor.
  233.  
  234. 9 -  PCTOR can open a Dos shell (viable only for 386/486)
  235.      with the low level AMTOR decoder running. The low
  236.      level decoder has buffered I/O queues to accept traffic even
  237.      when PCTOR has opened a DOS shell.
  238.  
  239.  
  240. 10 - The user can customize the working environment through use
  241.      of a configuration file that is read when PCTOR starts up.
  242.      Usage of a DOS environment variable "PCTOR" allows easy
  243.      accommodation for a variety of operating environments.
  244.  
  245. 11 - Keyboard entry is either in word-edit or character mode.
  246.      When in word-edit mode, keyboard data is only entered into
  247.      the type-ahead buffer when a space is entered (or carriage
  248.      return, or the special symbol sequence "+?"). This way
  249.      typing mistakes may be corrected before releasing them over
  250.      the air.
  251.  
  252. 12 - Advanced signal processing is available when using a special
  253.      modem. This type of modem allows PCTOR to analyze internal
  254.      circuit voltages in order to perform "soft" error detection
  255.      and correction. Please see section 6.4 for further details.
  256.  
  257. 13 - PCTOR's time may be set either for UTC or the user's local
  258.      time. 1.1 Minimum requirements to run PCTOR
  259.  
  260.  
  261. PCTOR will run on an IBM PC or close compatible computer. DOS 3.1
  262. or higher is required. A monochrome or EGA/VGA display adaptor
  263. will work. Although the software will run on a floppy-based
  264. system, a hard disk is recommended. The definition of "true IBM
  265. compatibility" is fuzzy and a great deal of flexibility has been
  266. built into the programs to handle a wide range of PC hardware.
  267. Please refer to the appendix where some further notes on dealing
  268. with incompatibilities are included.
  269.  
  270. Some of the DSP options are only feasible on more powerful
  271. machines, i.e. 386 with co-processor or a 486.
  272.  
  273. On the radio side, an HF modem, i.e. ST-6 or equivalent is
  274. required to decode received audio to +/- 12V RS232 logic signals.
  275. For transmission of AMTOR over the air, the user also has to
  276. provide a PTT interface and either AFSK or FSK. These interfaces
  277. are often included in an HF modem. If the software is used for
  278. monitoring only, only the HF modem is required. The HF modem is
  279. required to convert audio tones to RS232 compatible digital
  280. levels required by PCTOR (please see 6.3 for further notes on HF
  281. modems).
  282.  
  283. PCTOR uses some of the signal lines of the standard COM1 or COM2
  284. serial ports as a digital interface (the user specifies which COM
  285. port - see "Installation - software").   1.2 Caution
  286.  
  287.  
  288.  
  289. This software may not be suitable for all working environments.
  290. The user should therefore proceed with the usual caution and make
  291. sure critical software is backed up.
  292.  
  293. The author has done extensive tests on a very modest PC-
  294. compatible system running an 8 Mhz V20 processor and 20 MB hard
  295. disk and DOS 3.1. No other potentially competing resident
  296. software was used. The author also uses a 486 clone and 80 MB
  297. hard drive and DOS 5.0.
  298.  
  299. Every effort has been made to ensure that the software is "well
  300. behaved", however, the user is reminded that this software relies
  301. on critical timing. Normal system functionality is retained, i.e.
  302. time-of-day and floppy disk timeout activities. The user must
  303. thus be careful not to run other software that relies on similar
  304. "tricks" that PCTOR uses as the consequences are indeterminable.
  305.  
  306. Normal program usage and program termination will undo the
  307. actions of PCTOR and restore normal system operation. Should a
  308. program failure occur, the only way to restore normal system
  309. operation is to reboot DOS.
  310.  
  311. 1.3 Planned enhancements
  312.  
  313.  
  314.  
  315. Several enhancements are planned for release in the near future.
  316. As a registered user you will be notified of these when it
  317. becomes available. These include:
  318.  
  319. * Advanced memory ARQ for AMTOR (requires companion modem).
  320. * PACTOR (a pre-release version is already available).
  321. * SAA/CUA standard interface (Windows Application).
  322. * DSP modem and tuning indicator (for 386/486 machines).
  323. 2.0 Introduction
  324.  
  325.  
  326.  
  327. PCTOR is an implementation of CCIR specification 476-2 on an IBM
  328. personal computer or compatible computer. As such, it replaces
  329. the need for dedicated TNC hardware and is an attractive
  330. alternative for the casual user evaluating a new operating mode,
  331. as well as the serious developer that needs to embed low level
  332. I/O functionality into a system. 
  333.  
  334. PCTOR contain a user-interface program that works in conjunction
  335. with several low-level routines that enables a user to operate
  336. and monitor TOR traffic with a minimum of fuss. Its
  337. multiple-window user interface allows simultaneous monitoring of
  338. decoded traffic, decoding status, and user keyboard history. Pop-
  339. up windows is used for setting operational parameters, file-I/O
  340. operations, and canned buffer transmissions.
  341.  
  342. Function keys are used for quick, easy, and efficient control of
  343. most operations.
  344.  
  345. PCTOR was developed using Borland C++ Version 3.1. The low-level
  346. interface was developed using Borland Turbo Assembler version
  347. 3.0.
  348. 3.0 Hardware interface
  349.  
  350.  
  351.  
  352. PCTOR interfaces through signals of the COM1 or COM2 RS232 port.
  353. The following allocation of RS232 signals have been made: Other
  354. signal pins may be connected, however will play no part in the
  355. operation of PCTOR.
  356.  
  357. Note that for a minimal interface, DTR, RTS, DCD, and Ground, is
  358. required. This will allow operation on AMTOR. For ascii/baudot,
  359. RD and TD must be utilized. If further software support for the
  360. tuning display or memory ARQ is required, a parallel port
  361. interface is required. Please contact the author for further
  362. details. 
  363.  
  364.  
  365. For a 25-pin serial connector:
  366.  
  367. pin 2   (TD)  - output data bits (mark -12V, space +12V)
  368. pin 4   (RTS) - PTT              (off  -12V, on    +12V)
  369. pin 8   (DCD) - input data bits  (mark -12V, space +12V)
  370. pin 7   (Ground)
  371.  
  372. The following link is required:
  373.  
  374. pin 3   (RD)  connected to pin 8 (DCD).
  375.  
  376.  
  377.  
  378. For a 9-pin serial connector:
  379.  
  380. pin 3   (TD)  - output data bits (mark -12V, space +12V)
  381. pin 7   (RTS) - PTT              (off  -12V, on    +12V)
  382. pin 1   (DCD) - input data bits  (mark -12V, space +12V)
  383. pin 5   (Ground)
  384.  
  385.  
  386. The following link is required:
  387.  
  388. pin 2   (RD)  connected to pin 1 (DCD).
  389.  
  390.  
  391. When PCTOR is used in conjunction with the AN-93 analog modem,
  392. the parallel port interface is as follows:
  393.  
  394. For a 25-pin parallel printer connector:
  395.  
  396. pin 15 - AD0    (bits 0 - 4 from the A/D convertor)
  397. pin 13 - AD1
  398. pin 12 - AD2
  399. pin 11 - AD3
  400. pin 10 - AD4
  401.  
  402. pin 1  - Strobe (strobe for A/D convertor)
  403.  
  404. pin 18-25 - Ground
  405. 4.0 Installation
  406.  
  407.  
  408. 4.1 Software
  409.  
  410.  
  411. It is assumed that a hard disk is available, though the program
  412. can be run off a floppy disk as well. In fact it is suggested
  413. that you first run off a floppy disk to see if this software is
  414. compatible with other software that you may have on your system.
  415.  
  416. 1. Create a new subdirectory and change directory to it, i.e.
  417.  
  418.    mkdir tor 
  419.    cd tor
  420.  
  421. 2. Copy the contents of the floppy to the new subdirectory.
  422.  
  423.    copy a:*.*
  424.  
  425.    The following files will be copied:
  426.     
  427.    tor.exe    -- The split screen AMTOR program. 
  428.    tor2.exe   -- The COM2 version of the program.
  429.    tor.cnf    -- Setup file to custom configure your program. 
  430.    tor.doc    -- This documentation.
  431.    brag.tor   -- An example test file to load.
  432.    cq.tor     -- Another example file to load.
  433.    test.tor   -- A buffer file for demonstration of control
  434.                  characters
  435.    AMTOR.BAT  -- A batch file to run TOR with a parameter. Check
  436.                  to see which communications port COM 1 or 2 you
  437.                  desire.
  438.  
  439. 3. Customize tor.cnf  (see 4.2 Customizing the configuration)
  440.  
  441. 4. Create, or edit the files with ".tor" extensions. These files
  442.    will be read when the program starts and will become the
  443.    user's personalized buffers. These are transmitted by using
  444.    the "hot" keys ALT-1 through ALT-9. The two included examples
  445.    are typical.
  446.  
  447. 5. Edit the batch file "AMTOR", paying particular attention to
  448.    whether you are using COM1 or COM2.
  449.  
  450. 6. Run the batch file AMTOR, i.e. type AMTOR <enter>, or
  451.    alternatively run it directly from the command line: 
  452.    
  453.    Note that there may be optional parameter on the "TOR"
  454.    command line. For further details see paragraph 9 below.
  455.  
  456. 7. Make sure that you use the "ANSI.SYS" device driver in your
  457.    DOS config.sys (please see about ANSI.SYS in your DOS manual).
  458.  
  459. 8. There are three DOS environment variables that is worth
  460. knowing about. If you are not familiar with environment
  461. variables, type "SET" with no additional parameters at the DOS
  462. command line for the present list of environment variables on
  463. your machine. Some programs actually scans this list and may
  464. configure themselves accordingly. As far as PCTOR is concerned,
  465. your time zone, i.e. how many hours your are way from UTC time,
  466. and what abbreviation you would like to use for logging and
  467. operating purposes, is important. This environmental variable is
  468. called "TZ" and you typically include it in your autoexec.bat:
  469.  
  470.    set TZ=PST8  (I use this for setting Pacific Standard Time,
  471.                  which is 8 hours after UTC. Please consult your
  472.                  DOS manual).
  473.  
  474. When you need to run PCTOR with say a bunch of different
  475. configuration files, or different ".tor" files, the "PCTOR"
  476. environment variable may be used. Otherwise PCTOR will use the
  477. configuration file and ".tor" files in the local subdirectory
  478. from where you executed PCTOR from. If for example you need to
  479. use a different subdirectory for your configuration file than
  480. where your execute tor.exe, then the following command need to be
  481. typed at the DOS command line, or included your autoexec.bat
  482. (lets assume the configuration file is in c:\COMM):
  483.  
  484.  set PCTOR=c:\COMM
  485.  
  486. The third environment variable that is of concern is COMSPEC.
  487. This variable tells PCTOR where to locate "command.com" when a
  488. dosshell is invoked (the F8 key). Usually the root directory is
  489. used, but there is instances where users specifically wish to
  490. locate their command.com elsewhere. DO NOT CHANGE the COMSPEC
  491. variable unless you are very familiar with DOS.
  492.  
  493. 9. Several options are configurable from PCTOR's command line.
  494. This includes the type of display adaptor, the number of lines in
  495. each of the split screen displays, and the colors of displayed
  496. characters, messages, and annunciators. If you are using an
  497. EGA/VGA/SVGA display adaptor, the default settings will probably
  498. be adequate. In that case, leave out any further parameters on
  499. the command line.
  500.  
  501. The general format of the command line format is:
  502.  
  503. TOR[2] [/B | /C | /M] [/Wxx] [/R] [[/SCxx] [/SExx] [/SBxx]
  504.                                    [/SMxx] [/SAxx]]
  505.  
  506. Note that either the COM1 version, TOR, or the COM2 version, TOR2
  507. can be run. A command line parameters require the leading "/"
  508. followed by a directive such as B,C,M,W,R, or S. These parameters
  509. may be submitted in any order, each occurring only once. Note
  510. that for the display adaptor group, only one parameter, i.e. /B,
  511. or /C, or /M must be present. If for instance you have a monitor
  512. that has both color and black and white capabilities, and you
  513. desire to use a black and white display, use the /B.Using
  514. monochrome in this case will probably lock up your display.
  515.  
  516. The significance of the command line parameters are given below.
  517.  
  518. ┌───────────────────────────────────────────────────────┐
  519. │ Parameter               Description                   │
  520. ╞═══════════════════════════════════════════════════════╡
  521. │     Display type    (ONLY ONE OF THESE ALLOWED)       │
  522. ├───────────────────────────────────────────────────────┤
  523. │     B         Black and white on a color display  │
  524. │     C         Color                               │
  525. │     M     Monochrome                              │
  526. ╞═══════════════════════════════════════════════════════╡
  527. │     Wxx     Size of receive display (lines)          │
  528. ╞═══════════════════════════════════════════════════════╡
  529. │     RReceive only - disable transmit facilities    │
  530. ╞═══════════════════════════════════════════════════════╡
  531. │             Display color attributes                  │
  532. ├───────────────────────────────────────────────────────┤
  533. │     SCcc      Received traffic character color    │
  534. │     SEcc      Echoed   traffic character color    │
  535. │     SBcc      Background      color               │
  536. │     SMcc      Message     character color         │
  537. │     SAcc          Annunciator character color         │
  538. └───────────────────────────────────────────────────────┘
  539. * The field xx indicates an integer number of lines.
  540.   The field cc indicates a color code as given in the color table
  541. below.  
  542.  
  543. Certain restrictions apply to assignment of foreground and
  544. background  colors. Example. The default settings are:
  545.  
  546. TOR /C /W20 /SC7 /SE15 /SB1 /SM3 /SA14
  547.  
  548. This translates to: Color display (CGA/EGA/VGA), 22 line receive
  549. display size, SC=Lightgray, SE=White, SB=Blue, SM=Cyan,
  550. SA=Yellow.
  551.  
  552. Experience have shown that there are various types of monochrome
  553. display adapters around. Even those that are advertized as
  554. "Hercules" compatible often behave differently. Some of these
  555. monochrome display adapters could be used as being "color" as
  556. they will correctly map colors to the appropriate black/white
  557. attributes. Other monochrome adapters, however require the /M
  558. parameter and must not contain any color attributes. Some
  559. experimentation is necessary. Be warned that in some instances an
  560. inappropriate display selection may lock up your machine and
  561. require a reboot to recover.
  562.  
  563. The receive-only command line option, /R, will disable all
  564. transmit facilities such as F1, F2, as well as functions that
  565. enter data into transmit buffers. It is also recommended in this
  566. instance to remove the keyboard-buffer window altogether using
  567. /W25.
  568.  
  569. Color constants for setting PCTOR display attributes.
  570.  
  571. ┌─────────────────────────────────────────────────────┐
  572. │ Color Constant   Value     Foreground or Background │
  573. ╞═════════════════════════════════════════════════════╡
  574. │BLACK          0            Both                 │
  575. │BLUE           1            Both                 │
  576. │GREEN          2            Both                 │
  577. │CYAN           3            Both                 │
  578. │RED            4            Both                 │
  579. │MAGENTA        5            Both                 │
  580. │BROWN          6            Both                 │
  581. │LIGHTGRAY      7            Both                 │
  582. │DARKGRAY          8         Foreground only      │
  583. │LIGHTBLUE      9            Foreground only      │
  584. │LIGHTGREEN    10            Foreground only      │
  585. │LIGHTCYAN     11            Foreground only      │
  586. │LIGHTRED         12         Foreground only      │
  587. │LIGHTMAGENTA    13          Foreground only      │
  588. │YELLOW        14            Foreground only      │
  589. │WHITE         15            Foreground only      │
  590. └─────────────────────────────────────────────────────┘
  591.  
  592. 4.2 Customizing the configuration
  593.  
  594.  
  595.  
  596. To enable a user to streamline the setup of the program to his
  597. requirements, a configuration file, "tor.cnf" is read during
  598. startup. Read and edit the contents of the provided file
  599. "tor.cnf" to suit your own preferences. This file is optional,
  600. but when not found, the system will use defaults. These entries
  601. are all optional, and may appear in any order, however, please do
  602. not enter any spaces between symbols, 
  603.  
  604. i.e. 
  605.  
  606. vid : 1        is NOT the same as       vid:1
  607.  
  608. (The last one is correct).
  609.  
  610.  
  611.  
  612. The following entries may be customized:
  613.  
  614. id:KCWW/KC7WW             ----- set your identity selcal/callsign
  615. selcal:WDRZ/WA8DRZ/6      ----- set the  startup selcal/callsign.
  616. wru:QRA KC7WW KCWW        ----- your WRU text.
  617. txdelay:30                ----- delay (ms) after PTT on till data
  618.                                 out.This gives your transmitter
  619.                                 time to changeover to transmit.
  620. cddelay:3                 ----- delay (ms) after a data block is
  621.                                 received before acknowledgement
  622.                                 is sent. This gives the other
  623.                                 station's receiver time to
  624.                                 recover.
  625. timing:25                 ----- system clock timing adjustment
  626. uos:0                     ----- unshift-on-space OFF
  627. diddle:0                  ----- RTTY diddle is OFF
  628. case:0                    ----- upper/lower case OFF
  629. log:1                     ----- receive data capture (logging)
  630. logfile:tor.log           ----- data capture filename
  631. scrollfile:scroll.tmp     ----- name of scroll file - if a
  632.                                 ramdisk is available, use the
  633.                                 full drive name here
  634. logprog:logger.exe        ----- name of user's personal log
  635.                                 program
  636. packetprog:pac.bat        ----- name of user's packet program
  637. rel:0                     ----- reliability OFF
  638. vid:1                     ----- DIRECT video I/O enabled (see
  639.                                 appendix on hardware
  640.                                 compatibility)
  641. fcrlf:1                   ----- Files, i.e. buffers and files to
  642.                                 be sent through the ALT-F command
  643.                                 should use the AUTOMATIC CR/LF
  644.                                 mode. This means that all CR's in
  645.                                 the input text files will be
  646.                                 ignored, and LF will be
  647.                                 interpreted as CR/LF.
  648.  
  649. refr:15                   ----- Status update rate. The number of
  650.                                 system ticks between updates,
  651.                                 i.e. 15*55mS=0.825 seconds. To
  652.                                 fast a rate will flicker or
  653.                                 perhaps may introduce timing
  654.                                 problems, too slow will affect
  655.                                 animation of timing bar, clock,
  656.                                 etc.
  657. time:0                    ----- Use local time in displays and
  658.                                 logging. If UTC time is required,
  659.                                 use time:1 (also refer to the TZ
  660.                                 environment variable).
  661. tuning:0                  ----- Disable software support for
  662.                                 tuning display. To utilize this
  663.                                 feature, use tuning:1. A
  664.                                 special modem is required.
  665. marq:0                    ----- Disable memory ARQ. Different
  666.                                 levels of memory ARQ are
  667.                                 recognized. Presently only level
  668.                                 1, "hard bits" is recognized.
  669.                                 To utilize level 2 memory ARQ,
  670.                                 i.e "soft bits", a special modem
  671.                                 is required.
  672. word:1                    ----- Turns word-edit mode on.
  673. stat:0                ----- Turns statistics off. When
  674.                                 stat:1, displays the number of
  675.                                 blocks received, number of blocks
  676.                                 in error, and when memory ARQ is
  677.                                 enabled, the number of blocks
  678.                                 successfully reconstructed. These
  679.                                 statistics are also inserted in
  680.                                 the log file for later retrieval.
  681.  
  682.  
  683. Note that the syntax isn't tested very rigorously. Please check
  684. your input carefully against the supplied example.
  685.  
  686. Both the AMTOR mode of PCTOR and RTTY/ASCII uses "common RS232
  687. convention" where:
  688.  
  689.            Mark (binary 1) = -12V 
  690.            Space (binary 0) = +12V
  691.  
  692.            PTT not asserted (open) = -12V
  693.            PTT asserted (keyed)    = +12V
  694.  
  695. Until you have sorted out the required logic interfacing logic,
  696. prepare your transceiver for low power output into a dummy load
  697. (you may find your PTT unexpectedly comes on upon executing the
  698. program).
  699.  
  700. Now run TOR. If your PTT comes on right away, the sense of RTS
  701. must be inverted before further testing can be done. Normally,
  702. TOR should put you in standby mode (PTT OFF).
  703.  
  704. Next, on-the air tests will be necessary. Try to decode some FEC.
  705. FEC will be decoded while in standby mode. To make sure that you
  706. are in standby mode, hit F10. Tune in on an FEC transmission and
  707. wait for it to sync. If it fails to decode anything, first try
  708. changing the other sideband setting of your transceiver (if you
  709. normally use LSB, try using USB). This will show whether it's the
  710. interface logic or whether there is some other problem. If TOR
  711. receives FEC in the other sideband setting, the sense of DCD
  712. needs to be changed. 
  713.  
  714. The final test is to determine the logic level required for the
  715. transmitted data. Try an ARQ call. If it fails, you need to
  716. invert the sense of TxD.
  717.  
  718. There is an additional timing-related entry, "timing:" that need
  719. to be set up. This parameter allows external adjustment of the
  720. system clock pulses to cater for systems with inaccurate clocks.
  721. Very few PC's have accurate clocks and although the default value
  722. (25) will work reasonable well in most cases, adjustment of this
  723. parameter is very desirable. For determining the value of this
  724. timing parameter, see  5.2 - Command menu: usage of the 'T'
  725. option. 
  726. 5.0 Operating PCTOR
  727.  
  728.  
  729.  
  730. Upon startup, the shareware banner will be displayed. Press the
  731. ESC key to proceed to the PCTOR screen.
  732.  
  733. The contents and layout of the status display line depends on
  734. which options the user has selected. The following description
  735. refers to the case when all the options are enabled. This gives
  736. the reader a description of all possibilities.
  737.  
  738. PCTOR displays several windows: two status displays, the received
  739. traffic window, and the keyboard display. 
  740.  
  741. The smallest display is at the top of the screen, is the status
  742. window that is updated in real time and some machines may show
  743. some flickering. This is normal. 
  744.  
  745. Link status information, i.e. ARQ/BAUDOT/ASCII, IDLE, TFC, ERR,
  746. RQ, is displayed on the left hand side of the status line.
  747.  
  748. Adjacent to the link status is the selcal/callsign of the remote
  749. station. This data is used in establishing the link and also for
  750. printing out identification data (see usage of the "Ins" key).
  751.  
  752. Next, the programmed delays are shown: TD is the time (in
  753. milliseconds) that you allow, after the PTT signal has been
  754. activated, before data output will start. It is one way to
  755. compensate for slower on-switching equipment on your end. It
  756. allows for things to settle, before actual data is being sent.
  757. The default value (30 ms) is a reasonable compromise. CD is the
  758. time (in milliseconds) that allows the remote station's receiver
  759. to recover after it sent a block and is getting ready to receive
  760. your acknowledgment. The default of 3ms is reasonable. Actually,
  761. the total time before the user will be able to sample the
  762. acknowledgement is CD+TD. When you are sending blocks, however,
  763. then TD only plays a role. This split timing scheme allows for
  764. compensation in situations where the remote station experiences
  765. slower receiver recovery that transmit turn-on time. This is
  766. typical for local contacts.
  767.  
  768. Once some traffic starts flowing, and you were the call
  769. originator on ARQ (i.e. the "Master"), the block receive time
  770. will be displayed. This is an internal timing parameter that
  771. cannot be changed. It includes the delay-parameters at both send
  772. and receive stations as well as the time delay due to the signal
  773. propagation through the atmosphere. If you notice considerable
  774. variation, then multipath propagation is most probably the
  775. reason, however, under high noise conditions, the simple types of
  776. modems may also pass too much pulse noise for the software to
  777. achieve good bit phasing lock.
  778.  
  779. If the unshift-on-space (UOS) feature has been selected, this
  780. will be displayed as a µ symbol. This feature will shift letter
  781. shift when a space character is printed. Under noisy conditions,
  782. this will prevent the printing of data in the wrong case.
  783.  
  784. If the user has selected the receive screen capture
  785. (autologging), the a ¢ symbol will be displayed.
  786.  
  787. When the reliability option is selected a √ symbol will be
  788. displayed. Reliability is obtained by sampling each bit multiple
  789. times and using a majority voting.
  790.  
  791. If the user selected upper/lower case operation, there will be
  792. two arrows, the first one is associated with the case of the
  793. receive text, while the second one is associated with the
  794. transmit case. An "up" arrow means upper case, while a "down"
  795. arrow indicates lower case.
  796.  
  797. A 24 hour-format clock is also shown on the display. This clock
  798. is used for time stamps that are written to the log file, if
  799. enabled. The clock may be set for local time or UTC time (also
  800. see section 4.1 for details).
  801.  
  802. An eleven bit analog indicator on the right hand side shows how
  803. bit phasing is progressing. During FEQ or ARQ, the indicator
  804. should show slow motion from right to left. The speed of the
  805. motion depends on how much your clock and the other station's are
  806. differing relative to each other.
  807.  
  808. When the special TOR modem is used, and provided that the
  809. "tuning:1" option is set in the configuration file, a tuning
  810. indicator is displayed immediately below the bit phasing display.
  811. This tuning display consists of ten gradations each for mark and
  812. space simulating two bar-graph displays. The position of the
  813. indicator within the bar-graph display is proportional to energy
  814. passing through the mark and space filters in the modem's
  815. discriminator. When there is sufficient energy present, the color
  816. of the displayed indicator will change from a grayed outline to a
  817. solid color (red for mark and yellow for space on color
  818. displays). A well-tuned signal shows as two solid indicators that
  819. rests on the extreme end of the display. The display is quite
  820. steady and sharp.
  821.  
  822. When using the "marq:1" option is used, the level 1 memory ARQ
  823. procedure is performed during ARQ reception. This involves block
  824. reconstruction from multiple bad blocks using "hard bits". Level
  825. 2 memory ARQ uses "soft bits" in addition to "hard bits",
  826. however, the special TOR modem is required. When memory ARQ has
  827. been successful in reconstructing a block, this is shown as "ERR"
  828. with green background instead of the usual red background. 
  829.  
  830. The second status line displays the name of the user-supplied log
  831. file, the name of the user-supplied executable (usually a logging
  832. program), statistics, and the size of the type-ahead buffers.
  833. 5.1 Function keys
  834.  
  835.  
  836.  
  837. The function keys have the following functions:
  838.  
  839. F1  - Initiate an FEC (Ascii/Baudot) call.
  840.  
  841. F2  - Initiate an ARQ call.
  842.  
  843. F3  - Force a change-over (works only in ARQ).
  844.  
  845. F4  - Initiate QRT sequence (ends ARQ/FEC, Ascii/Baudot
  846.       transmissions).
  847.  
  848. F5  - If receive text capture is enabled, will insert a timestamp
  849.       into the log file.
  850.  
  851. F6  - Initiate ARQ listen mode.
  852.  
  853. F7  - Clear keyboard type ahead and special buffers (used for
  854.       WRU), clears keyboard display.
  855.  
  856. SHFT F7 - Clears receive display.
  857.  
  858. F8  - Open a DOS shell (use with care - 386/486 machines).
  859.  
  860. F9  - Not used.
  861.  
  862. F10 - Abort any operation in progress and revert to standby mode.
  863.  
  864. End - Enter the +? sequence into the keyboard buffer.
  865.  
  866. Ins - Enter an identification string into the keyboard buffer.
  867.  
  868. Del - Force LTR case during receive (FEC/ARQ or Baudot). In
  869.       addition will it reset the transmit and received cases to
  870.       UPPER.
  871.  
  872. Ctrl-Home - toggles "raw" data mode. For experimenters only -
  873.       displays untranslated ITA2 (Baudot) code in Hex. This data
  874.       is also written to the log for later analysis.
  875.  
  876. ESC - Calls up the command menu when in user mode. 
  877.  
  878. Pgup/PgDn// - Scrollback, any other key will restore screen
  879.  
  880. ALT-A Executes a signal analysis program. The modulation
  881.       signal as recovered after the low pass filter of the modem
  882.       is sampled and displayed in a graphics window. A second
  883.       graphics window displays the frequency domain equivalent.
  884.   Only EGA, VGA, and Hercules-compatibility is supported
  885.       (also see Appendix for more on the signal analysis
  886.       software).
  887.  
  888. ALT-B - Enter the buffers menu. This allows a data buffer to be
  889.       loaded into the keyboard buffer. The user prepares these
  890.       buffers ahead of time using a text editor. These files have
  891.       a "TOR" extension and will be loaded when TOR is
  892.       initialized. Also note the usage of the ALT-1 through ALT-9
  893.       keys as "hot" keys to load any of these buffers with one
  894.       keystroke.
  895.  
  896. ALT-C - Prompt user to enter the selcal/callsign of the remote
  897.       station AND initiate an ARQ call immediately.
  898.  
  899. ALT-D - Toggle RTTY diddle on/off.
  900.  
  901. ALT-F - File transmission menu. Allows the transmission of text
  902.       files while in FEC or ARQ. The transmitted text will be
  903.       displayed as it is transmitted. There will be no echo to
  904.       the receive window.
  905.  
  906. ALT-H - Displays a help screen, showing the usage of the various  
  907.       function keys.
  908.  
  909. ALT-M - "Hot keys" to the DSP modem control program.
  910.  
  911. ALT-L - Activate the program named in the configuration file
  912.       option "logprog". PCTOR remains running in the background.
  913.       Upon termination of the user's program, the PCTOR display
  914.       is restored.
  915.  
  916. ALT-P - "Hot keys" to PC-PACTOR. Note that PC-PACTOR need to be
  917.       available in the same directory than PCTOR.
  918.  
  919. ALT-O - Toggles output to printer on/off.
  920.  
  921. ALT-R - Prompt user for the selcal/callsign of the remote station
  922.       WITHOUT initiating an ARQ call.
  923.  
  924. ALT-T - Enter UTC time into the keyboard buffer for transmission
  925.       in FEC or ARQ.
  926.  
  927. ALT-W - Sends the "WRU" command to the remote station. This is
  928.       the "figs-D" character in the ITA2 (Baudot) alphabet.
  929.  
  930. ALT-X - terminates PCTOR in an orderly fashion. Equivalent to the
  931.       "Q" option in the command menu.
  932.  
  933. ALT-Y - "Hot key" to the packet program. Note that this typically
  934.       is a batch file. The user must set this up the "packetprog"
  935.       parameter in the configuration file. Please see 
  936.       section 4.2.
  937. 5.2 Command Menu
  938.  
  939.  
  940.  
  941. The command menu (called up when the ESC key is pressed when in
  942. the main display) has the following one letter commands:
  943.  
  944.  
  945.  
  946. C - Enable or disable upper/lower case operation.
  947. D - Set the cd and tx delays. CD is the time after reception of a
  948.     data block until your acknowledgement is forthcoming. TD sets
  949.     the time delay after the PTT is activated until data is sent.
  950.     For local contacts CD=10, TD=30 will be suitable. For DX
  951.     contacts CD=1, TD=10 is suitable. The default settings of
  952.     CD=3, TD-30 is adequate for most modern radios.
  953.  
  954. H - Help with the function keys.
  955. I - Set your own ARQ identity.
  956. K - Toggle between word-edit or character keyboard modes.
  957. L - Enable or disable receive capture (logging).
  958. O - Change operating mode AMTOR->BAUDOT->ASCII->AMTOR->...
  959. P - Change baudrate (300 max).
  960. Q - Terminate PCTOR.
  961. T - Set clock timing. This parameter allows fine adjustments of
  962.     the master clock. See Appendix A for further details.
  963. U - Sets UOS (unshift on space) on or off.
  964. V - Toggles video mode (DIRECT/BIOS).
  965. W - Set up your WRU text.
  966. X - Exit the command menu to main display. The ESC key may also
  967.     be used for this purpose. 
  968. Y - Sends out a 500 HZ pulse train from pin 20 for diagnostic
  969.     purposes.
  970.  
  971. 6.0 APPENDIX.
  972.  
  973.  
  974. 6.1 If problems persists.......
  975.  
  976.  
  977.  
  978. The most common feedback from users appears to be setting up
  979. PCTOR's master clock timing. Once this is done, the user enters
  980. the "magic" number into the configuration file that is used
  981. automatically each time the program is started. Only when
  982. installing the program on another computer will it be necessary
  983. to reset this timing parameter. 
  984.  
  985. Please note that this parameter has noting to do with the speed
  986. of your processor, or whether you use an 8088 or 486. Its about
  987. how to program a certain chip (8253/4) on the PC's motherboard.
  988.  
  989. Typical symptoms will be that either nothing happens when trying
  990. to decode a FEC signal, or, the FEC sync is obtained, some text
  991. is printed, however, synch is lost and only a few words of
  992. garbage is printed before it starts re-sync. If you have a scope,
  993. or frequency counter available, try the following (its not
  994. serious if you do not have access to test equipment - you will
  995. just have to be a little patient and do some common-sense trial
  996. and error. It will take a little longer, but you will obtain the
  997. same end result. Skip the next paragraph if you do not have
  998. access to test equipment):
  999.  
  1000. Enter the command menu (Hit ESC) and select the "Y" option. This
  1001. command will send a signal out of the COM port pin 20 (for 25 pin
  1002. RS-232). This signal should be set to as close to as you can to
  1003. 500 Hz. Use the "+" and "-" keys to toggle the speed up or down.
  1004. When you have completed the test, return to the main display and
  1005. select STANDBY (F10).
  1006.  
  1007. Tune in FEC mode to a strong FEC broadcast station such as KMI
  1008. WOO, or WLO (see attached list 6.5). Observe the timing indicator
  1009. on the right hand corner of the status line. Notice that it may
  1010. slide slowly. The objective is to have it as stationary or
  1011. indecisive as possible. However, do not be concerned if you
  1012. cannot get a perfect steady display, that is quite normal.
  1013.  
  1014. Vary the timing value, one step at a time using the "+" or "-"
  1015. keys. After changing the clock setting, the previous value as
  1016. well as the new value will be displayed. You MUST then exit the
  1017. command menu for the new settings to become effective. Once back
  1018. to the main display, select STANDBY (F10) and wait for sync to be
  1019. detected. Notice that when you return from the command menu to
  1020. the main menu, you may see some received text being written to
  1021. the receive display. This is text that have been accumulated by
  1022. the low-level decoder and was stored in a system buffer while you
  1023. were using the command menu. This text should be ignored as the
  1024. changed clock setting was not yet in effect. 
  1025.  
  1026.  
  1027. Once the optimal setting has been found, modify the configuration
  1028. file TOR.CNF to include the parameter for your system. Values
  1029. ranging from 0 to 36 is valid. This procedure set the system
  1030. clock close to +/-50ppm for stable AMTOR operation.
  1031.  
  1032.  
  1033.  
  1034. 6.2 What if it still does not work ......
  1035.  
  1036.  
  1037. At this point there remains one question: how "IBM compatible"
  1038. your computer is. Perhaps your computer is quite compatible but
  1039. there may be an interface adapter card that is not. It has been
  1040. found that some video adapters does special emulation, i.e. runs
  1041. one video mode, but allows some other type of equipment to be
  1042. attached, i.e. ATI allows you to run VGA mode, yet allows you to
  1043. use a CGA display. This kind of hardware introduces either wait
  1044. states, or disables the interrupt system at a very low level.
  1045. Since PCTOR needs a stable timing source, there will be a
  1046. conflict for sure.
  1047.  
  1048. PCTOR allows you to minimize these conflicts that are related to
  1049. the video display by allowing the user to disable writing
  1050. directly to the video memory. By selecting the "V" option in the
  1051. command menu thus toggling BIOS on, all video access will be done
  1052. through BIOS calls. The status line is also simplified to reduce
  1053. the overhead. In some cases, this will do the trick. It is also
  1054. possible to reduce the amount of screen-writing activity by
  1055. slowing down the rate that the status line is updated (see 4.2
  1056. "refr:15" ). 
  1057.  
  1058. Another problem that has been experienced with older PC
  1059. compatibles, i.e. 1984 or so, is support chips on the motherboard
  1060. that does not behave like later versions. Although these machines
  1061. may be perfectly capable of running most software, they will not
  1062. be able to keep accurate timing and may not work well with PCTOR.
  1063. If possible, update the 8254 and 8259 chips. Also check the 8250
  1064. UART for the same reason.
  1065.  
  1066. Although there has not yet been reported problems on the use of
  1067. serial/parallel interface cards using ASIC (Application-Specific
  1068. Integrated Circuit) chips, some laptops and recent desktop
  1069. machines are now using them. These ASIC's have varying levels of
  1070. compatibility with the 8250-style chips and some are known to
  1071. present real problems. The author uses both styles without
  1072. problems, however, it is possible that the software may not be
  1073. able to work in all situations. If your problems persist, as a
  1074. last resort, check whether perhaps your system uses one of these
  1075. ASIC's. Feedback on such problems will be appreciated - perhaps a
  1076. solution may be forthcoming.
  1077.  
  1078.  
  1079.  
  1080. 6.3 A few notes on HF modems
  1081.  
  1082. Experience have shown that some modems perform better than
  1083. others. We may divide the class of popular modems roughly into
  1084. three categories (there are a few other types as well):
  1085.  
  1086. (I)   The phase locked loop (PLL),
  1087.  
  1088. (II)  filter type,
  1089.  
  1090. (III) digital signal processing (DSP) type.
  1091.  
  1092. It is the author's opinion that the PLL type of modems are not
  1093. suitable for average HF operations. It is best to avoid this
  1094. approach even with extensive front-end filtering.
  1095.  
  1096. The filter-type modem have been used with much greater success on
  1097. HF. However, there are various kinds of approaches in filter-type
  1098. modems:
  1099.  
  1100.  Vintage designs like the ST-5 and ST-6 employed L/C filters
  1101. and are known to work reasonably well, given that some changes
  1102. are made to their low-pass filters (mainly to pass the 100 Hz
  1103. AMTOR modulation rate). 
  1104.  
  1105.  Active filter designs such as the DJ6HP will also work quite
  1106. well under fair conditions, however, do not expect too much under
  1107. adverse conditions. Another popular active filter modem is the
  1108. BARTG design. This small modem will work reasonably well too,
  1109. however it lacks front-end bandpass filtering, and has poor post-
  1110. discriminator signal processing. Both these designs are good for
  1111. newcomers.
  1112.  
  1113. Modern good performance filter-type modems use sophisticated
  1114. front end filters in conjunction with well-designed
  1115. discriminators and extensive post discriminator filtering
  1116. circuitry. They generally have excellent dynamic range to handle
  1117. strong signals as well as being able to "dig into the noise" to
  1118. handle weaker signals. They will tolerate some degree of off-
  1119. frequency operation. It also has become popular to monitor analog
  1120. levels of signals within the modem in order to implement "soft"
  1121. error correction techniques. Although this does not necessarily
  1122. mean an increase the level of hardware sophistication, additional
  1123. interfacing and software support is required.
  1124.  
  1125. The DSP approach is still new to HF operation, yet holds a lot of
  1126. promise. There are presently some commercial units available.
  1127.  
  1128. If you are interested in a small, yet sophisticated filter-type
  1129. modem, with "soft" error correction capabilities, please contact
  1130. the author for further details.
  1131. 6.4 Soft error detection and correction
  1132.  
  1133.  
  1134.  
  1135. With the introduction of PACTOR, soft error detection and
  1136. correction entered the domain of HF communications for amateurs.
  1137. The idea of soft error detection and correction has been
  1138. described extensively in the literature, mostly in conjunction
  1139. with high-speed satellite data links. 
  1140.  
  1141. A short introduction to soft error detection and correction, also
  1142. termed "memory ARQ" follows:
  1143.  
  1144. Most HF modems presently in use, does extensive signal processing
  1145. to recover of the transmitted modulation. The output of the modem
  1146. then is a stream of logical bits (zeroes and ones). These bits
  1147. are then further processed by digital processing methods to form
  1148. messages. 
  1149.  
  1150. It is, however, unfortunate that a great deal of useful
  1151. information is lost when logical bits are produced by the modem's
  1152. hardware. One can think of this thresholding as a one-bit analog-
  1153. to-digital (A/D) conversion process (with resulting values zero
  1154. and one). If this A/D conversion could have produced more
  1155. resolution, i.e. eight, 16, or even 256 distinct levels, then it
  1156. would have been possible not only have access to the resultant
  1157. thresholded value, but also the magnitude of the signal at the
  1158. time that it was thresholded. 
  1159.  
  1160. One application where knowledge of this magnitude is useful, is
  1161. AMTOR ARQ mode. During AMTOR ARQ, blocks of three characters are
  1162. transmitted on each chirp. The receiving station analyzes each of
  1163. the three received characters for a possible error, and when an
  1164. error is detected, it chirps back an RQ reply to the transmitting
  1165. station to repeat the last three-character block. It is possible,
  1166. and even probable when conditions are poor, that the
  1167. retransmitted block may again contain an error. This may result
  1168. in several repeated blocks. It is possible to improve on this
  1169. "blind RQ" method by using memory ARQ.
  1170.  
  1171. If the receiving station uses memory ARQ technique, it would have
  1172. stored the A/D values associated with each and every bit of each
  1173. of the three received characters. When an error is detected in a
  1174. retransmitted block, i.e. after an RQ, an error-correction
  1175. algorithm is then used to compute a "confidence" value for each
  1176. character of the bad blocks (over two or more blocks). 
  1177. Subsequent block reconstruction then follows where a
  1178. reconstructed block is made up from highest confidence elements.
  1179. Such a reconstructed block is then error-tested again. More often
  1180. than not, this results in fewer RQ's. PCTOR will show the actual
  1181. statistics of how its doing. For HF conditions a success rate of
  1182. 10% of received blocks in error, is achievable.
  1183.  
  1184.  
  1185. 6.5 Some frequencies for FEC stations for test purposes
  1186.  
  1187.  
  1188.  
  1189. Logged on: Fri Dec 11 1992 22:25:19 on 8431.5 KHz using PCTOR
  1190. V2.02
  1191.  
  1192.  
  1193. AT+T HIGH SEAS RADIOTELEX BROADCAST FREQUENCIES ARE AS FOLLOWS:
  1194.  
  1195. +++++++++++++++++++++++++++++++++++++++++++++++++
  1196. +    ITU CHAN       COAST-TX    AT+T STATION    +
  1197. +    --------       --------    ------------    +
  1198. +      405           4212.5         WOO         +
  1199. +      412           4215.5         WOM         +
  1200. +      416           4217.5         KMI         +
  1201. +                                               +
  1202. +      626           6326.5         KMI         +
  1203. +      628           6327.5         WOM         +
  1204. +      629           6328.0         WOO         +
  1205. +                                               +
  1206. +      831           8431.5         KMI         +
  1207. +      833           8432.5         WOM         +
  1208. +      834           8433.0         WOO         +
  1209. +                                               +
  1210. +     1303          12630.0         KMI         +
  1211. +     1305          12631.0         WOM         +
  1212. +     1307          12632.0         WOO         +
  1213. +                                               +
  1214. +     1728          16870.0         KMI         +
  1215. +                                               +
  1216. +     1818          19689.5         KMI         +
  1217. +                                               +
  1218. +     2299          22425.5         WOM         +
  1219. +++++++++++++++++++++++++++++++++++++++++++++++++
  1220.  
  1221.  
  1222.  
  1223. WX AND HIGH SEAS INFORMATION SCHEDULED BROADCASTS ARE AS FOLLOWS:
  1224.  
  1225. STATION      WX           INFORMATION
  1226. -------  ------------    --------------
  1227.   KMI    ODD  UTC HR+20   EVEN UTC HR+20
  1228.   WOM    EVEN UTC HR+40   ODD  UTC HR+40
  1229.   WOO    EVEN UTC HR+20   ODD  UTC HR+20
  1230.  
  1231.  
  1232.               6.6 Signal analysis module
  1233.  
  1234.  
  1235.  
  1236. Besides the benefits gained by memory ARQ, useful time domain
  1237. signal analysis is possible especially when coming across an
  1238. unknown signal. Time and frequency domain analysis software are
  1239. provided as an external executable program that is accessible via
  1240. a hot key from PCTOR. Acquisition of signal data is then
  1241. initiated and interfacing with the signal processing program is
  1242. relatively smooth and unintrusive. 
  1243.  
  1244. Two graphical displays are shown. One panel shows the actual
  1245. analog signal with its software-thresholded counterpart, the
  1246. other panel shows the frequency domain (RMS power spectrum). A
  1247. software controlled cursor (using the left/right arrow keys),
  1248. allows inspection of power spectral peaks, while different levels
  1249. of magnification of the analog signal is user selectable (using
  1250. the up arrow key). Continuous conversions are performed while the
  1251. ALT key is held down. When the ALT key is up, the present state
  1252. of the graphs are frozen.
  1253.  
  1254. Unfortunately this type of work is only feasible on faster class
  1255. machines. A 386/25 with math co-processor or a 486 processor is a
  1256. pleasure to use. The signal processing software, however, has
  1257. been tested on a 8 Mhz XT without math co-processor where it took
  1258. several minutes to run to completion. Presently only Hercules,
  1259. EGA, and VGA display adapters are supported.
  1260.  
  1261. 6.8 DSP modem
  1262.  
  1263.  
  1264. The advantages of DSP technology was already realized in the
  1265. PCTOR's early days. At that time both hardware and the
  1266. mathematics for applying DSP algorithms was not available.
  1267. Affordable DSP hardware and the development of DSP modem software
  1268. now makes the application of this technology very attractive.
  1269. Besides being more cost-effective than its earlier analog
  1270. counterparts, very high performance is possible. Being software
  1271. upgradable, future developments are made relatively simple.
  1272.  
  1273. The DSP modem firmware available for use with PCTOR is for usage
  1274. on RTTY/ASCII, AMTOR, PacTOR, and HF Packet. The modem hardware
  1275. is based on a TI 320C26 40 MHz and 14-bit codec. Communication
  1276. with the DSP is though the same RS232 port that PCTOR uses. All
  1277. firmware is downloaded to the DSP from the PC host. Loading a new
  1278. modem typically takes only 2 seconds.
  1279.  
  1280. Further details of the modem will be available shortly.
  1281. 6.8 PCTOR upgrade history (since 2.03)
  1282.  
  1283.  
  1284. Version 2.03
  1285.  
  1286. 1) Supports baudot and ascii receive/transmit (baudot has the
  1287. "diddle" feature). This includes the "O" and "P" options in the
  1288. main menu to change modes of operation and transmission speed
  1289. respectively. The PC's UART is used for this purpose and thus
  1290. requires signals be routed to and from the uart appropriately.
  1291.  
  1292. 2) UTC or local time may be optionally be selected. 
  1293.  
  1294. 3) Either word-edit or character keyboard modes may be selected  
  1295. (previously word-edit was standard). See the "K" option in the  
  1296. main menu..
  1297.  
  1298. 4) F4 now also terminates mode-L
  1299.  
  1300. 5) Some minor enhancements and bugs were fixed, i.e.
  1301. - Reading the receive mask incorrectly from the .CNF file,
  1302. - Cleanup of the CR/LF sequence associated with F5 usage,
  1303. - Cleanup of the display when using a DOSSHELL (F8),
  1304. - Better validation of setup parameters from the .CNF,
  1305. - Allow the usage of "?" for help in the main menu.
  1306.  
  1307.  
  1308. 6) Optional software support for a companion modem. This includes
  1309. an analog mark/space tuning display on the PCTOR status line. It
  1310. also allows future development of "soft" error detection and
  1311. correction using "memory ARQ". This development is needed to 
  1312. fully support PACTOR.
  1313.  
  1314. 7) If you are not interested in ascii/baudot operation, no
  1315. changes are needed in your RS232 hardware interface to use
  1316. version 2.03. If you are interested in using ascii/baudot,
  1317. however, please see 3.0 for additional interfacing requirements.
  1318. If you are further interested in using the software tuning
  1319. indicator display feature, the companion modem is required as
  1320. well as a parallel port interface.
  1321.  
  1322. 8) Older versions of PCTOR (pre-1.17) used a terminate stay
  1323. resident (TSR) program, called TORBIOS. PCTOR now incorporates
  1324. all low-level routines previously performed by the TSR.
  1325.  
  1326. 9) ALT-A "spawns" a special module for modulation analysis. This
  1327. involves taking 1024 data samples from the modem's low pass
  1328. filter stage, performing an FFT and displaying both analog and
  1329. frequency domain waveforms. This allows future development of
  1330. analysis of received audio. IMPORTANT NOTICE: Do not attempt this
  1331. function on a 8088 or 80286 type processor - it works but takes
  1332. several minutes to perform the calculations. Only a 386/25 with
  1333. co-processor or a 486/33 can do justice to this analysis. At this
  1334. time, only EGA, VGA, and Hercules compatible displays are
  1335. supported.
  1336.  
  1337. 10) ALT-L "spawns" any program the user wishes to execute when
  1338. this key is pressed. Typically this would be a logging program.
  1339.  
  1340. 11) The log filename and name of the ALT-L user program is
  1341. displayed on the status line.
  1342.  
  1343. 12) There is an option to enable memory ARQ (MARQ) for AMTOR.
  1344. When active, "ERR" is displayed with a green background instead
  1345. of the usual red background when processing error blocks. The
  1346. MARQ algorithm is similar to that used for PACTOR. This first
  1347. level of memory ARQ is based on "hard bits" and will work with
  1348. any modem. It does not require the special modem. Future levels
  1349. of memory ARQ will also make use of "soft bits".
  1350.  
  1351. 13). The help screen "ALT-H" is expanded to include an
  1352. explanation of the different flags associated with various
  1353. options.
  1354.  
  1355.  
  1356.                       Version 2.04
  1357.  
  1358. 14) ALT-X may now be used for quick exit (tnx SV1BDS).
  1359.  
  1360. 15) Command.com (the dosshell) is now located through the COMSPEC 
  1361. environment variable (tnx SV1BDS).
  1362.  
  1363. 16) All files, i.e. TOR.CNF or *.TOR files are now located 
  1364. through the environment variable "PCTOR" (please see 5.0 for 
  1365. application notes) (tnx SV1BDS).
  1366.  
  1367. 17) Baudot and ascii operations now echo transmitted text to the 
  1368. receive screen.
  1369.  
  1370. 18) Any baudrate not greater than 300 bps is allowed on
  1371. baudot/ascii, however, only integer values must be entered. The
  1372. amateur standard of 45.45 baud is a special case where a baudrate
  1373. of 45 will be interpreted as meant to be 45.45 bps (tnx SV1BDS).
  1374.  
  1375. 19) The delay parameter called TX-DELAY have now been split into
  1376. two parts, TD (transmitter turn-on delay), and CD (control delay)
  1377. (for further details please see section 4.2 on customizing the
  1378. configuration file) (acknowledgement to Bill Henry, K9GWT, QST
  1379. June 1992, p.34-45).
  1380.  
  1381. 20) PCTOR now dynamically locates a free user-interrupt slot in
  1382. the range 60h-67h. Previously 60h was hooked, however this may
  1383. have caused a problem is some instances. If there is none
  1384. available, the user will be notified and prompted, otherwise
  1385. installation will proceed as usual without any intervention.
  1386.  
  1387. 21) The special option indicator symbols on the upper command
  1388. line started crowding the time clock digits, so they were moved
  1389. down a line to the right of the PCTOR logo.
  1390.  
  1391. 22) The machine class (8088/86, v20/30, 80186, 80386/80486) is
  1392. detected at startup. This may be used in future versions of the
  1393. software to customize the time-critical software and available
  1394. options to be run on the hardware.
  1395.  
  1396.  
  1397. Version 2.07
  1398.  
  1399. 23) Bug fixes in the BAUDOT/ASCII typeahead as well as changes to
  1400. the operation of the typeahead buffer in AMTOR. Please note that
  1401. all the keyboard data, the time key (ALT-T), and message buffers
  1402. (ALT-1 thru 9) will now be collected in the typeahead buffer in
  1403. the order that it was entered. This should work out better as you
  1404. will be able to mix text for transmission either from buffers,
  1405. and/or data from the keyboard without first waiting for the other
  1406. to buffer to empty out.
  1407.  
  1408. 24) Printer log feature toggled on/off using ALT-O. 
  1409.  
  1410. 25) All traffic sent using the "send files" (ALT-F) will now also
  1411. be logged to disk.
  1412.  
  1413.  
  1414.                      Version 2.08/9
  1415.  
  1416. 26) Bug fixes associated with thypeahead when ALT-B was used.
  1417.  
  1418. 27) Bug fix in exception handler associated with printer OFFLINE.
  1419.  
  1420. 28) F4, when used in ASCII/BAUDOT will terminate transmission
  1421. only when the typeahead buffer is empty.
  1422.  
  1423.  
  1424. Version 2.11
  1425.  
  1426. 29) Does not require that DTR be connected any more. All data
  1427. output is now routed through TD.
  1428.  
  1429. 30) Special embedded control characters  and  controls the PTT.
  1430. When using these, a submitted buffer will take control of the
  1431. PTT. For an example, please see "test.tor".
  1432.  
  1433.  
  1434. Version 2.12
  1435.  
  1436. 31) When a user backspaced over more than one word in the
  1437. typeahead buffer, "WORD MODE" got confused. This bug was fixed as
  1438. well as cleaning up backspacing back to previous lines.
  1439.  
  1440.  
  1441. Version 2.13 
  1442.  
  1443. 32) Fix "getting one behind" during buffer load. Dont backspace
  1444. when buffer is empty.
  1445.  
  1446.  
  1447. Version 3.00
  1448.  
  1449. 33) Introduce color user-definable color scheme.
  1450. 34) Scoll back receive data area via disk file
  1451. 35) Output signal via BOTH TxD and DTR; DTR with usual            
  1452. OUTMASK option.
  1453.  
  1454.  
  1455. Version 3.01/2
  1456.  
  1457. 36) F8 should not use closeall, but close logfile only.
  1458. 37) After ALT-P, restore operating mode
  1459. 38) It appears that INMASK settings that inverts DTR also
  1460. inhibits, BAUDOT/ASCII. Reset DTR setting for Baudot/ASCII
  1461.  
  1462.  
  1463. Version 3.03
  1464.  
  1465. 39) ALT_M to access DSP modem control
  1466. 40) Sort *.tor buffers alphabetically
  1467. 41) ALT_S sends a file continuously
  1468. 42) ALT_Y shells out to Baycom
  1469. 43) ALT_D to toggle RTTY diddle
  1470. 44) Two-page help screen
  1471. 45) Remove INMASK/OUTMASK options
  1472. 6.9 Newsletter December 1992
  1473.  
  1474.  
  1475.  
  1476. With 1992 drawing to a conclusion, it may be worthwhile to
  1477. reflect on some things accomplished with PCTOR and contemplate
  1478. future milestones. 
  1479.  
  1480. This newsletter will concentrate on the origins of PCTOR its
  1481. present status, and some thoughts on where things will be going
  1482. in the near future. 
  1483.  
  1484. For those not too familiar with the software - PCTOR is a
  1485. complete communications package for the PC or close compatibles.
  1486. Its main purpose was to encode/decode AMTOR (SITOR) using the
  1487. PC's on-board hardware in conjunction with a simple external HF
  1488. modem, however rtty modes are now also supported. The interface
  1489. with the HF modem is through a COM port. A hardware TNC is thus
  1490. not required as all decoding is performed in software right on
  1491. the PC. PCTOR is available from the library 6 area of the HamNet
  1492. forum on CompuServe.
  1493.  
  1494. PCTOR has grown and undergone several revisions over the past
  1495. year. Presently version 2.03 is the latest. The user base has
  1496. also grown over the past year and support has come from all over
  1497. the world. I am extremely grateful for your interest and support.
  1498. As to all those suggestions and bug reports from users - your
  1499. contributions have been valuable. Some of your ideas have since
  1500. been implemented, others are in the queue.
  1501.  
  1502. By time that you receive this newsletter, a pre-release of my
  1503. PACTOR program for the PC will be available. This version of
  1504. PACTOR is for decoding and reading of PACTOR traffic and will
  1505. automatically decode 100/200 baud ascii or Huffman text on-the-
  1506. fly. This includes PACTOR "ARQ" and "UNPROTO" modes. Please check
  1507. CompuServe HamNet library area 6 or send me a formatted disk and
  1508. SASE mailer for a free Shareware copy.
  1509.  
  1510. 6.8.1 PCTOR - some history.
  1511.  
  1512.  
  1513.  
  1514. During 1978 I met Alan G3RSP/MM, who was maritime mobile on a
  1515. tanker en route to the Persian gulf. I was then involved in
  1516. operating an rtty SELCAL station at that time with the call
  1517. ZS1HF. We had many interesting QSO's on every occasion that his
  1518. ship sailed around the Cape of Good Hope. As a result of these
  1519. contacts, I was introduced to Peter Martinez, G3PLX and his early 
  1520. AMTOR developments. At that time, there was only G3PLX and G3YYD
  1521. on HF, with Alan using the ship's radio to communicate with Peter
  1522. on AMTOR.
  1523.  
  1524. Fortunately for me, I was using the same type of microprocessor
  1525. chip that Peter was using - the Motorola M6800. Peter supplied
  1526. the source code for AMTOR and with some further work, I was able
  1527. to decode AMTOR on my homebrew 6800 computer. Everything needed
  1528. to be made yourself - the modem, the decoder, and of course the
  1529. modifications to the HF transceiver to improve changeover time.
  1530. By the time that I had my first AMTOR QSO, I was ranked amateur
  1531. number 15 or so on HF AMTOR - just an indication how fast things
  1532. were happening.
  1533.  
  1534. My own experimental efforts amounted to a single board system,
  1535. complete with filter-type modem and tuning display. This system
  1536. could handle baudot, ascii (at various rates), CW with automatic
  1537. speed tracking, and AMTOR mode A, B and L. I called it a
  1538. universal communications processor (UCP). Details were published
  1539. for an amateur club project, however few systems were actually
  1540. built. This system served my needs very well for several years
  1541. and was a test bed for exploring many new ideas.
  1542.  
  1543. During 1983 I came to Oregon as a visiting scientist, wrote the
  1544. FCC examination, got my ticket and in due course as KC7WW, was
  1545. listening for AMTOR. I subsequently met Bill, K4PA, who was
  1546. experimenting with AMTOR as well, imagine - on a KIM
  1547. microprocessor system! Bill supplied all the specifics on getting
  1548. the necessary FCC permission to operate AMTOR in the USA. At that
  1549. time this involved obtaining special temporary authority (STA). 
  1550.  
  1551. It was about 1984 that I learned of Paul, AD7I's Z-AMTOR, and
  1552. shortly after that commercial developments from AEA and others.
  1553. The publication of several technical articles followed.  The
  1554. introduction of the multi-mode TNC as a black box appliance
  1555. introduced many new enthusiasts to the world of digital
  1556. communications.
  1557.  
  1558. During 1990 I started translating the M6800 code to 8088 Assembly
  1559. language. The old hardware M6800 was just too cumbersome and
  1560. inflexible to compete with the ubiquitous PC. Making AMTOR work
  1561. on the PC's hardware was a challenge to say the least. With
  1562. modern software tools, however, things became easier to debug
  1563. than development work on the old embedded system.
  1564.  
  1565. The first release of PCTOR was version 1.03, which was uploaded
  1566. to CompuServe Hamnet library 6 during October 1991. It has been
  1567. updated several times since then.
  1568.  
  1569. It is with fond memories that I think of the early days. I am
  1570. indebted to those that helped me along the way - in appreciation
  1571. to the memory of Irv Hoff from whose work I learned about HF
  1572. modems and much appreciation to Peter Martinez who shared the
  1573. secrets of making AMTOR possible on a microprocessor. 
  1574.  
  1575. 6.8.2 The present status of PCTOR
  1576.  
  1577.  
  1578.  
  1579. PCTOR consists of two major components: a low-level interface
  1580. that handles critical timing at the hardware level, and a user
  1581. interface. Previously the low-level interface and user interface
  1582. was implemented as two separate modules, combining them made a
  1583. lot of sense and simplified things for new users. 
  1584.  
  1585. The user interface follows the split screen format of operation 
  1586. that has become standard for this kind of communications
  1587. operations. Data received through the software decoder is
  1588. displayed in the upper window while the operator's keyboard
  1589. entries are displayed in the lower window. In AMTOR mode, the
  1590. display of characters on the upper display is actually an echo of
  1591. what is being received at the remote station. This feedback helps
  1592. an operator judge the state of a link - how well the flow is
  1593. progressing, what has been sent already and what else is still
  1594. waiting to be sent. This is one of the built-in characteristics
  1595. of AMTOR.
  1596.  
  1597. Two status lines keeps the user informed of real-time operational
  1598. status of the digital translator. The main status line is on the
  1599. very top of the display. It shows, besides the link status, other
  1600. useful parameters such as path propagation delay, current
  1601. callsign and selcal, and the current status of some
  1602. user-controlled flags such as unshift-on-space (UOS), 
  1603. upper/lower case operation, and high reliability. The latest
  1604. symbol that has been added is "δ", that is used to indicate
  1605. whether "memory ARQ" is active or not. More about this feature
  1606. later.
  1607.  
  1608. The real-time clock on the upper status line may now be
  1609. programmed in either local time or UTC.
  1610.  
  1611. Part of the upper status line and a small portion of the upper
  1612. split screen display is used for an on screen tuning indicator.
  1613. This option is available only when a special modem is used with
  1614. PCTOR. Details on this modem follow in the text below.
  1615.  
  1616. The lower status line is located between the upper text display
  1617. area and the lower text display area. It contains the name of the
  1618. user's log file, logging program's name, and shows the current
  1619. size of the user's keyboard buffer, i.e. the number of characters 
  1620. in the type-ahead buffer. This logging program is a new feature
  1621. that was added to allow for the execution of a user-specified
  1622. program when ALT-L is pressed. This allows ready access to a
  1623. logging program via a hot key from PCTOR while the decoder
  1624. remains running in the background. The user, however, has to
  1625. supply his own logging program.
  1626.  
  1627. A general "help" function is available through the ALT-H key
  1628. where function key assignments, as well an explanation of the
  1629. indicator symbols are given.  
  1630.  
  1631. In addition to AMTOR modes ARQ, FEQ, and "listen", ascii and
  1632. baudot is now also supported at 45.45, 50, 75, and 110 baud.
  1633. Please note that in order to use ascii and baudot, additional
  1634. interface wiring is required.
  1635.  
  1636. To further simplify operations, a pop-up menu system allows the
  1637. user to change some functional parameters on-line. This pop-up
  1638. menu system is complete with its own help function where all
  1639. available features that may be accessed through the pop-up menu
  1640. are listed. The latest additions to this menu are "O" and "P"
  1641. options that allows the toggling between AMTOR, baudot, and ascii
  1642. modes, and alters the baud rate for baudot or ascii modes of
  1643. operation.
  1644.  
  1645. In order to customize the state of options and other special
  1646. items, a user-prepared configuration file is read when PCTOR
  1647. starts up. The most recent keywords that have been added are
  1648. LOGPROG, REFR, TUNING, WORD, and MARQ. LOGPROG allows the
  1649. specification of the user's logging program. REFR sets the
  1650. refresh rate of the status displays. TUNING activates the
  1651. on-display bargraph tuning displays. WORD enables word-edit
  1652. keyboard entry mode. MARQ activates the memory ARQ algorithm.
  1653. Some of these features have been requested by users. Please note
  1654. that TUNING and MARQ assumes that special hardware is present in
  1655. the user's modem. More about this later in this newsletter.
  1656.  
  1657. Further general features are available. Off-the-air received
  1658. traffic may be captured in a text file. Automatic and manual
  1659. identification and time-stamping facilities are provided. Sending
  1660. of text files over the air is possible in all modes, recalling of
  1661. canned buffers, i.e. CQ call, or brag tape, for transmission, at
  1662. a keystroke.
  1663.  
  1664. PCTOR supports the APlink protocol for full upper and lower case
  1665. ascii. This is based on the "PLX"-method of upper/lower case with
  1666. extensions as developed by Victor Poor (W5SMM).
  1667.  
  1668. A "high" reliability option is included to improve received data
  1669. integrity beyond the 3/4 (zeroes/ones) ratio test used in AMTOR.
  1670.  
  1671. The Unshift-on-space (UOS) option have been available in earlier
  1672. versions of PCTOR. It is particularly useful for baudot
  1673. operation. This option switches the baudot case shift to upper
  1674. case at the reception of a space character. Baudot is
  1675. particularly prone to noise and often ends up in the wrong
  1676. letter/figs case shift. UOS, resets the case to letter shift each
  1677. time a space character is received. Based on the general
  1678. assumption that a space character is mostly used to separate
  1679. words, letter case is assumed. This method more often than not
  1680. will allow better print under adverse conditions. Do not be
  1681. concerned with all this case shifting if it does not make
  1682. sense.It really comes from an earlier era of mechanical
  1683. teleprinters. Most of these issues are now handled by the
  1684. software anyhow.
  1685.  
  1686. Baudot operators have all sorts of tricks to "help the print
  1687. along", especially when conditions are marginal. The baudot
  1688. "diddle" is one of them. This amounts to sending "idle"
  1689. characters when the keyboard buffer is empty. These idle
  1690. characters are carefully chosen to be either the ITA2 characters
  1691. letter, figures, or in some cases "blank". PCTOR uses diddle in
  1692. baudot mode.
  1693.  
  1694. As mentioned above, a new modem with special features has been
  1695. under development for usage with PCTOR. This development was
  1696. essential to support new modes such as PACTOR. At the same time,
  1697. however PCTOR's performance was enhanced through the use of
  1698. sophisticated digital signal analysis. This modem is not a
  1699. digital signal processing unit, however it is quite sophisticated
  1700. and a good performer. The hardware lineup consists of a
  1701. highpass/lowpass front end, bi-quad discriminator, active
  1702. rectification, and low pass filter optimized for 200 Hz
  1703. modulation rate. An 8-bit A/D convertor is included that is used
  1704. by the software for analyzing recovered modulation signal in the
  1705. memory ARQ algorithm. A ten element bargraph display is provided
  1706. as a tuning indicator. Further details of the modem, and its
  1707. availability in kit form, will be published shortly.
  1708.  
  1709. Memory ARQ is an algorithm for intelligent error correction
  1710. during ARQ (PCTOR has an option that allows AMTOR to make use of
  1711. it as well). Briefly, during reception of AMTOR data blocks, the
  1712. algorithm saves not only logical states of bits from the modem's
  1713. slicer stage, but also saves the actual magnitude of the
  1714. recovered modulation signal levels associated with each bit. This
  1715. additional information thus indicates a confidence level
  1716. associated with each logic level. When two or more blocks are in
  1717. error, the algorithm proceeds to examine the confidence levels of
  1718. individual bits for possible "reconstruction" of a good block
  1719. from erroneous blocks. The actual details of the algorithm is
  1720. somewhat more complex than this brief introduction. 
  1721.  
  1722. Besides the benefits gained by memory ARQ, useful time domain
  1723. signal analysis is possible especially when coming across an
  1724. unknown signal. Time and frequency domain analysis software are
  1725. provided as an external executable program that is accessible via
  1726. a hot key from PCTOR. Acquisition of signal data is then
  1727. initiated and interfacing with the signal processing program is
  1728. relatively smooth and unintrusive. 
  1729.  
  1730. Two graphical displays are shown. One panel shows the actual
  1731. analog signal with its thresholded counterpart, the other panel
  1732. shows the frequency domain (RMS power spectrum). A software
  1733. controlled cursor (using the left/right arrow keys), allows
  1734. inspection of power spectral peaks, while different levels of
  1735. magnification of the analog signal is user selectable (using the
  1736. up arrow key). Continuous conversions are performed while the ALT
  1737. key is held down. When the ALT key is up, the present state of
  1738. the graphs are frozen.
  1739.  
  1740. Unfortunately this type of work is only feasible on faster class
  1741. machines. A 386/25 with math co-processor or a 486 processor is a
  1742. pleasure to use. The signal processing software, however, has
  1743. been tested on a 8 Mhz XT without math co-processor where it took
  1744. several minutes to run to completion. Presently only Hercules,
  1745. EGA, and VGA display adapters are supported.
  1746.  
  1747.  
  1748.  
  1749. 6.8.3 Future developments
  1750.  
  1751.  
  1752.  
  1753. The modem development is in final stages of printed circuit
  1754. layout. The details will be appearing shortly in one of the
  1755. amateur or electronic hobbyist journals. A kit of parts will be
  1756. also offered.
  1757.  
  1758. There has been several requests for PACTOR capability. This will
  1759. be the next major upgrade. Although I have been experimenting and
  1760. testing PACTOR, the special modem was required to implement true
  1761. memory ARQ. Without the A/D convertor addition, true memory ARQ
  1762. is not possible, regardless of what you may have been told by
  1763. others. If you have wondered of what PACTOR is like - my
  1764. experience has been that it is really fun to operate when
  1765. conditions are good. If you have ever tried HF packet, PACTOR is
  1766. a great improvement. However, when conditions are marginal,
  1767. performance degrades rapidly, delays become uncomfortably long,
  1768. and not even memory ARQ seem to be of much use. This is where you
  1769. wish that it could have reverted to AMTOR. I am of the opinion
  1770. that it may become popular with some higher powered
  1771. traffic-handling stations. This is, however, my own opinion.
  1772.  
  1773. Several requests were for the inclusion of embedded control
  1774. functions in text files. For example: a user wants to send an
  1775. automatic CQ while contesting: A text file is prepared that
  1776. contains the body of the CQ message including some special
  1777. control functions. The text file is submitted for transmission in
  1778. a similar same way than a buffer message is sent. The following
  1779. psuedocode shows the procedure.
  1780.  
  1781.  
  1782.  
  1783. Script submission for automatic transmission
  1784.  
  1785. 1)  START:
  1786. 2)        <initiate FEC transmission>
  1787. 3)        CQ CONTEST DE KC7WW KC7WW (KCWW)
  1788. 4)        CQ CONTEST DE KC7WW KC7WW (KCWW)
  1789. 5)        AR PSE ARQ KN
  1790. 6)        <terminate FEC transmission>
  1791. 7)        <wait for an ARQ link (timeout=30 seconds)>
  1792. 8)        <if it timed out> go back to START
  1793. 9)        <cancel automatic mode and enter normal keyboard mode>
  1794.  
  1795. Note: F7 flushes the text buffer, F10  forces standby mode.
  1796.  
  1797. This simple example shows several kinds of control symbols, i.e.
  1798. LABELS, start/stop FEC transmission, and wait with timeout - a
  1799. branch address for timeout is supplied. A small language set to
  1800. support some of PCTOR's built-in features will be developed. The
  1801. script will be parsed for syntax and semantics before actual
  1802. submission occurs.
  1803.  
  1804.  
  1805. There have been several requests for running PCTOR in a
  1806. multitasking environment. This is of course possible, given that
  1807. PCTOR has guaranteed one millisecond interrupt rate for low level
  1808. services. Although this timing requirement hardly impacts
  1809. performance on a 386 or 486 type machine, it is unfortunate that
  1810. some of the popular multitaskers require the same hardware that
  1811. PCTOR uses for their pre-emptive scheduling. In the end someone
  1812. usually looses out. Windows 3.1 on the other hand, being a
  1813. co-operative multitasker, does tolerate this kind of intervention
  1814. but is not considered "well behaved". It is uncertain what future
  1815. versions of Windows will allow. It will be logical to develop a
  1816. DLL that contains the low level services as an embedded device
  1817. driver that will guarantee such high priority interrupts. The
  1818. PCTOR user interface will then be using the familiar Windows CUA
  1819. format.
  1820.  
  1821. I apologize for the inadequacies of the documentation, especially
  1822. for newcomers to the digital modes. It is my impression that most
  1823. new users either had some earlier experience with AMTOR, or was
  1824. very knowledgeable and capable of putting together all the
  1825. required bits and pieces. There appears to be a lack of the
  1826. basics for AMTOR, but also what these signals sound like. So,
  1827. this is perhaps one area that hopefully could be improved. It
  1828. also appears that a complete bibliography for reference purposes
  1829. would be helpful.
  1830.  
  1831. The inclusion of more digital signal processing is a possibility.
  1832. Not only could we benefit from noise reduction algorithms but
  1833. also from DSP modems that has been tailored for optimum
  1834. performance. This approach uses software to adapt filter
  1835. parameters and usually results in really sharp filters. An
  1836. external dedicated DSP approach, or perhaps a low-cost sound
  1837. board could be used. This kind of development is very
  1838. challenging, yet holds promise for the future. 
  1839.  
  1840. The baudot and ascii mode presently lacks "autostart" and "anti-
  1841. space" facilities. If anyone is interested in these features,
  1842. digital equivalents are possible that works quite well.
  1843.  
  1844. Work on PCTOR has always been a challenge and very rewarding. The
  1845. order that features are implemented is dictated mostly by what
  1846. available time I have at hand, the hardware requirements, and
  1847. often doing the fun things first. A lot of time is also spent on
  1848. improving things, often fine tuning the time-critical parts, or
  1849. fixing irritating bugs.
  1850.  
  1851. Should there perhaps be something that you consider needing
  1852. attention, please let me know and we can see what could be done
  1853. about it. 
  1854.  
  1855. To contact me, you may leave an e-mail message for me on
  1856. CompuServe (70730,3472), or leave a message at WA8DRZ via packet
  1857. or Aplink. 
  1858.  
  1859.                 KC7WW @ WA8DRZ.#NOCAL.CA.USA
  1860.  
  1861. If all else fails - write to me at the address below.
  1862.  
  1863. 6.10    1993 Newsletter
  1864.  
  1865.  
  1866. This newsletter is to update registered users and those
  1867. interested in PCTOR and PC-PACTOR on developments during 1993.
  1868. Some background will be discussed and future trends also
  1869. presented.
  1870.  
  1871. I thank those from whom I have heard over the past year. Your
  1872. contributions and support are always greatly appreciated.
  1873.  
  1874.  
  1875.  
  1876.        ┼ This issue of the newsletter is dedicated in memory
  1877.        of Pim Woest, PA3AGG. Pim was one of the first to
  1878.        experiment with PCTOR - he became a silent key on
  1879.        January 31st, 1993. We will miss him.
  1880.  
  1881.  
  1882.  
  1883. Newsletter Summary:
  1884.  
  1885. 1. PCTOR
  1886. 2. PC-PACTOR
  1887. 3. HF Modem Developments
  1888. 4. Future Enhancements
  1889.  
  1890.  
  1891.  
  1892. 1. PCTOR
  1893.  
  1894. What is it? For those not too familiar with the software: PCTOR
  1895. is a complete amateur radio communications package for the PC or
  1896. close compa-tibles for operating AMTOR (SITOR), RTTY, and ASCII.
  1897. An external HF modem is required to convert received audio to COM
  1898. port signals (RS232 levels). As decoding is performed in software
  1899. right on the PC, there is no need for a hardware TNC.
  1900.  
  1901. The 1992 newsletter covered software up to version 2.03 (included
  1902. in PCTOR documentation). PCTOR has grown and undergone several
  1903. revisions over the past year. Versions 2.04 - 2.08 included
  1904. several bug fixes and improvements for a cleaner interface with
  1905. DOS. 
  1906.  
  1907. When the HF analog modem, AN-93, became available, memory ARQ for
  1908. AMTOR and an on-screen tuning display, was added (please see
  1909. section 3 on: HF modems). 
  1910.  
  1911. Version 3.0 introduced a scrollable receive display and user-
  1912. definable screen colors. 
  1913.  
  1914. Version 3.03 is currently under development. It includes support
  1915. for a new DSP modem and allows "hot keys" to operate PC-PACTOR or
  1916. HF packet from PCTOR. Additional features for customization of
  1917. the startup file includes selection of the operating mode and
  1918. baud rate. For SWL listeners, transmit features may now be
  1919. disabled and the receive screen extended to fully use the
  1920. additional display lines.
  1921.  
  1922. There has been considerable confusion over which RS232 signals
  1923. are used to transmit data. This came about in an effort to
  1924. simplify the hardware interface: It was found that AMTOR could
  1925. use the "break" mechanism to send data through the "Td" line.
  1926. This simplified the interface to four lines, i.e. Rd/DCD - for
  1927. input signals, and Td/RTS for output signals. Unfortunately, this
  1928. did not work with some older serial ports. For compatibility
  1929. sake, both Td and DTR was then made available for data output.
  1930. When the DSP project came along, DTR was needed for DSP control.
  1931. That is why version 3.03 now only supports serial ports that can
  1932. switch data fast enough through Td.
  1933.  
  1934.  
  1935. 2. PC-PACTOR
  1936.  
  1937.  
  1938. What is it? PC-PACTOR is a program for the PC to decode, read and
  1939. transmit PACTOR traffic. It will automatically decode 100/200
  1940. baud ASCII or Huffman-compressed text.  
  1941.  
  1942. Version 0.03 was released in December 1992 for monitoring PacTOR
  1943. traffic only. I have since had a lot of requests for a full
  1944. transmit version of the program. The current version of PC-PACTOR
  1945. is 0.16 and includes the ASCII FEC transmit capability, traffic
  1946. logging and file transmission. Version 0.20 is presently under
  1947. development for full ARQ capability. 
  1948.  
  1949. I do ask your patience as there are some major implementation
  1950. issues to be solved. First is to achieve the 15ppm timing
  1951. requirement. The PC clock was never designed for this kind of
  1952. accuracy. 
  1953.  
  1954. PacTOR is based on a proprietary standard developed by SCS,
  1955. Germany. In order to receive support from SCS, a license fee has
  1956. to be paid. Presently, this is why all other amateur radio
  1957. implementations of PacTOR are licensed. SCS, however, gave
  1958. permission to develop a Shareware version but indicated that no
  1959. support would be available. 
  1960.  
  1961. Things went fairly smooth during development until it became
  1962. clear that there are a number of undocumented exceptions that
  1963. needed clarification. To date I have not been able to obtain all
  1964. the necessary details from SCS to resolve these outstanding
  1965. issues. I will persist, however, in pursuing these on my own,
  1966. though it may take a little longer.
  1967.  
  1968. Please note that version numbers below 1.00 indicates
  1969. "experimental" status and should be considered that.
  1970.  
  1971. 3. HF Modem Developments
  1972.  
  1973.  
  1974. Due to numerous requests for a simple yet good performing HF
  1975. modem for use with PCTOR and PC-PACTOR, the AN-93 was developed.
  1976. The design is a conservative active filter approach using 170 Hz
  1977. shift with 2125/2295 Hz tones for data rates to 200 baud. The
  1978. unit is intended for direct FSK operation. The computer interface
  1979. is through a serial port that is compatible with PCTOR.
  1980.  
  1981. A 10-segment bargraph display is provided for tuning purposes. In
  1982. addition, an A/D convertor is provided that samples recovered
  1983. modulation for  implementation of soft memory ARQ by the PC. In
  1984. addition, the A/D signal is used for an on-screen tuning display.
  1985. The A/D convertor interfaces to the PC through a parallel port
  1986. interface.
  1987.  
  1988. To those interested, there still remains a few AN-93 kits still
  1989. at $135 plus postage.
  1990.  
  1991. A considerable amount of effort was spent on studying DSP math,
  1992. algorithms, and hardware. This led to the development of a
  1993. prototype DSP unit for HF digital. A small production of these
  1994. units followed. This was known as the DSP-100 project. Although
  1995. an excellent performer, the unit proved to be overly complex and
  1996. expensive. After all, it appears that the software TNC approach
  1997. is attractive because of its low cost.
  1998.  
  1999. Further DSP developments using a $99 evaluation module from Texas
  2000. Instruments, called the "DSK" (DSP Starter's Kit) proved very
  2001. promising. The DSK is based on a 40 MHz 320C26 DSP chip and
  2002. includes a 44kHz, 14 bit A/D convertor. 
  2003.  
  2004. DSP applications developed for PCTOR now includes high
  2005. performance HF modems for RTTY, AMTOR, PacTOR, and HF packet. The
  2006. DSK shares the serial port with PCTOR. User-selected modems are
  2007. downloaded from the PC to the DSK's on-chip memory at a 115200
  2008. baud.
  2009.  
  2010. Some valid concern has been expressed about the "delay"
  2011. introduced by such a DSP and subsequent timing issues. This delay
  2012. time is known as "group delay" and is the due to the time taken
  2013. for digital data to ripple through the DSP's shift registers. I
  2014. have measured this delay to be approximately 7mS longer than the
  2015. AN-93. This has not yet proved to be a problem for me, but if it
  2016. does, there are ways to reduce the group delay.
  2017.  
  2018. Which is better - the AN-93 analog or the DSP unit? A unit such
  2019. as the AN-93 is very good at what it is designed for, however,
  2020. when attempting to make it work at too wide a range of baud
  2021. rates, some compromise is necessary. In such a case, versatility
  2022. is often traded for ultimate performance. The DSP algorithms on
  2023. the other hand, are customized for the application at hand and is
  2024. expected to deliver uncompromized performance. 
  2025.  
  2026. The implementation of very efficient filters is a further
  2027. advantage of the DSP approach. The modems used in this
  2028. application uses 80th order FIR filters, has outstanding
  2029. selectivity, and good dynamic range. 
  2030.  
  2031. It is expected that in time, further digital modem code will
  2032. become available in conjunction with yet newer modes. All that
  2033. would be required is new DSP code and decoding software on the
  2034. PC.
  2035.  
  2036.  
  2037.  
  2038. 4. Future enhancements
  2039.  
  2040.  
  2041. The most-requested enhancement appears to be for a full PacTOR
  2042. implementation. This will receive very high priority.
  2043.  
  2044. The script processor for PCTOR remains to be further developed.
  2045. This feature will allow the user to embed control characters in
  2046. submitted text. These control characters will allow execution of
  2047. "test and branch" dependant on internal status variables and
  2048. allow "looping" constructs. This would allow special operations,
  2049. such as needed for contest mode.
  2050.  
  2051. Both hardware and software developments using DSP will continue.
  2052. The DSK code may eventually be ported to a PC Soundcard as DSP-
  2053. based Soundcard technology reaches maturity. There already are
  2054. innovative applications for CW, SSTV, and WEFAX for Soundcards.
  2055. The prohibitive cost of development software remains a problem.
  2056. The DSK will be used in the meantime.
  2057.  
  2058. There are plans for development of a new mode based on ideas from
  2059. MIL-STD-188-110. The new mode is expected to fill the need for
  2060. more robustness than PacTOR with data between 75 and 300 bps
  2061. suitable for HF networking. DSP modems will be used to implement
  2062. m-ary modulation at low baud rate, higher bit rates are achieved
  2063. by transmission of multiple bits per baud. This new mode will
  2064. rely on error-correction techniques to achieve coding gain and
  2065. robustness. 
  2066.  
  2067. A draft of specifications will be available in the near future
  2068. and will be submitted to various peer forums for input. Those
  2069. interested in participating on this project, please contact me. 
  2070.  
  2071. 7.0 Disclaimer
  2072.  
  2073.  
  2074.  
  2075. The author, Johan Forrer KC7WW is not responsible for any damage,
  2076. injury, loss of profit or gain associated with the use,
  2077. installation, or application of this software. 
  2078.  
  2079.  
  2080.  
  2081. November 1993
  2082. J.B.Forrer KC7WW
  2083. 26553 Priceview Drive
  2084. Monroe, OR 97456
  2085. United States of America
  2086.